home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / chpr.z / chpr
Encoding:
Text File  |  2002-10-03  |  12.8 KB  |  265 lines

  1.  
  2.  
  3.  
  4. CCCCHHHHPPPPRRRR((((3333SSSS))))                                                              CCCCHHHHPPPPRRRR((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      CCCCHHHHPPPPRRRR, ZZZZHHHHPPPPRRRR - Performs Hermitian rank 1 update of a packed complex
  10.      Hermitian matrix
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      Single precision complex
  14.  
  15.           Fortran:
  16.                CCCCAAAALLLLLLLL CCCCHHHHPPPPRRRR ((((_u_p_l_o,,,, _n,,,, _a_l_p_h_a,,,, _x,,,, _i_n_c_x,,,, _a_p))))
  17.  
  18.           C/C++:
  19.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  20.                vvvvooooiiiidddd cccchhhhpppprrrr ((((cccchhhhaaaarrrr _u_p_l_o,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_n,,,, ffffllllooooaaaatttt *_a_l_p_h_a,,,, iiiinnnntttt _x,,,, iiiinnnntttt
  21.                _i_n_c_x,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_a_p))));;;;
  22.  
  23.           C++ STL:
  24.                ####iiiinnnncccclllluuuuddddeeee <<<<ccccoooommmmpppplllleeeexxxx....hhhh>>>>
  25.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  26.                vvvvooooiiiidddd cccchhhhpppprrrr ((((cccchhhhaaaarrrr _u_p_l_o,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_n,,,, ffffllllooooaaaatttt *_a_l_p_h_a,,,, iiiinnnntttt _x,,,,
  27.                iiiinnnntttt _i_n_c_x,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_a_p))));;;;
  28.  
  29.      Double precision complex
  30.  
  31.           Fortran:
  32.                CCCCAAAALLLLLLLL ZZZZHHHHPPPPRRRR ((((_u_p_l_o,,,, _n,,,, _a_l_p_h_a,,,, _x,,,, _i_n_c_x,,,, _a_p))))
  33.  
  34.           C/C++:
  35.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  36.                vvvvooooiiiidddd zzzzhhhhpppprrrr ((((cccchhhhaaaarrrr _u_p_l_o,,,, iiiinnnntttt _n,,,, ddddoooouuuubbbblllleeee *_a_l_p_h_a,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_x,,,,
  37.                iiiinnnntttt _i_n_c_x,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_a_p))));;;;
  38.  
  39.           C++ STL:
  40.                ####iiiinnnncccclllluuuuddddeeee <<<<ccccoooommmmpppplllleeeexxxx....hhhh>>>>
  41.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  42.                vvvvooooiiiidddd zzzzhhhhpppprrrr ((((cccchhhhaaaarrrr _u_p_l_o,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_n,,,, ddddoooouuuubbbblllleeee *_a_l_p_h_a,,,, iiiinnnntttt _x,,,,
  43.                iiiinnnntttt _i_n_c_x,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_a_p))));;;;
  44.  
  45. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  46.      These routines are part of the SCSL Scientific Library and can be loaded
  47.      using either the ----llllssssccccssss or the ----llllssssccccssss____mmmmpppp option.  The ----llllssssccccssss____mmmmpppp option
  48.      directs the linker to use the multi-processor version of the library.
  49.  
  50.      When linking to SCSL with ----llllssssccccssss or ----llllssssccccssss____mmmmpppp, the default integer size is
  51.      4 bytes (32 bits). Another version of SCSL is available in which integers
  52.      are 8 bytes (64 bits).  This version allows the user access to larger
  53.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  54.      by using the ----llllssssccccssss____iiii8888 option or the ----llllssssccccssss____iiii8888____mmmmpppp option. A program may use
  55.      only one of the two versions; 4-byte integer and 8-byte integer library
  56.      calls cannot be mixed.
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. CCCCHHHHPPPPRRRR((((3333SSSS))))                                                              CCCCHHHHPPPPRRRR((((3333SSSS))))
  71.  
  72.  
  73.  
  74.      The C and C++ prototypes shown above are appropriate for the 4-byte
  75.      integer version of SCSL. When using the 8-byte integer version, the
  76.      variables of type iiiinnnntttt become lllloooonnnngggg lllloooonnnngggg and the <<<<ssssccccssssllll____bbbbllllaaaassss____iiii8888....hhhh>>>> header
  77.      file should be included.
  78.  
  79. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  80.      These routines perform the following Hermitian rank 1 operation:
  81.  
  82.           _A <- _a_l_p_h_a _x_x_H + _A
  83.  
  84.      where _a_l_p_h_a is a real scalar, _x is an _n-element vector, _x_H is the
  85.      conjugate transpose of _x, and _A is an _n-by-_n packed complex Hermitian
  86.      matrix.
  87.  
  88.      See the NOTES section of this man page for information about the
  89.      interpretation of the data types described in the following arguments.
  90.  
  91.      These routines have the following arguments:
  92.  
  93.      _u_p_l_o      Character.  (input)
  94.                Specifies whether the upper or lower triangular part of matrix
  95.                _A is packed into the array argument _a_p, as follows:
  96.  
  97.                _u_p_l_o= 'U' or 'u': the upper triangular part of _A is supplied in
  98.                the argument _a_p.
  99.                _u_p_l_o= 'L' or 'l': the lower triangular part of _A is supplied in
  100.                the argument _a_p.
  101.  
  102.      _n         Integer.  (input)
  103.                Specifies the order of matrix _A.  _n >= 0.
  104.  
  105.      _a_l_p_h_a     Scalar alpha.  (input)
  106.                CCCCHHHHPPPPRRRR: Real.
  107.                ZZZZHHHHPPPPRRRR: Double precision.
  108.  
  109.      _x         Array of dimension 1+(_n-1) * |_i_n_c_x|.  (input)
  110.                CCCCHHHHPPPPRRRR: Single precision complex array.
  111.                ZZZZHHHHPPPPRRRR: Double precision complex array.
  112.                Contains vector _x.
  113.  
  114.      _i_n_c_x      Integer.  (input)
  115.                Specifies the increment for the elements of _x.  _i_n_c_x must not
  116.                be 0.
  117.  
  118.      _a_p        Array of dimension (_n(_n+1))/2 .  (input and output)
  119.                CCCCHHHHPPPPRRRR: Single precision complex array.
  120.                ZZZZHHHHPPPPRRRR: Double precision complex array.
  121.  
  122.                Before entry with _u_p_l_o = 'U' or 'u', array _a_p must contain the
  123.                upper triangular part of the Hermitian matrix packed
  124.                sequentially, column-by-column, so that _a_p(1) contains _A(1,1),
  125.                _a_p(2) contains _A(1,2), _a_p(3) contains _A(2,2), and so on.  On
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. CCCCHHHHPPPPRRRR((((3333SSSS))))                                                              CCCCHHHHPPPPRRRR((((3333SSSS))))
  137.  
  138.  
  139.  
  140.                exit, the upper triangular part of the updated matrix
  141.                overwrites array _a_p.
  142.  
  143.                Before entry with _u_p_l_o = 'L' or 'l', array _a_p must contain the
  144.                lower triangular part of the Hermitian matrix packed
  145.                sequentially, column-by-column, so that _a_p(1) contains _A(1,1),
  146.                _a_p(2) contains _A(2,1), _a_p(3) contains _A(3,1), and so on.  On
  147.                exit, the lower triangular part of the updated matrix
  148.                overwrites array _a_p.
  149.  
  150.                The imaginary parts of the diagonal elements need not be set.
  151.                They are assumed to be 0; on exit, they are set to 0.
  152.  
  153. NNNNOOOOTTTTEEEESSSS
  154.      CCCCHHHHPPPPRRRR/ZZZZHHHHPPPPRRRR is a Level 2 Basic Linear Algebra Subprogram (Level 2 BLAS).
  155.  
  156.      When working backward (_i_n_c_x < 0), this routine starts at the end of the
  157.      vector and moves backward, as follows:
  158.  
  159.           _x(1-_i_n_c_x * (_n-1)), _x(1-_i_n_c_x * (_n-2)), ..., _x(1)
  160.  
  161.  
  162.    DDDDaaaattttaaaa TTTTyyyyppppeeeessss
  163.      The following data types are described in this documentation:
  164.  
  165.           TTTTeeeerrrrmmmm UUUUsssseeeedddd                     DDDDaaaattttaaaa ttttyyyyppppeeee
  166.  
  167.      Fortran:
  168.  
  169.           Array dimensioned _n           xxxx((((nnnn))))
  170.  
  171.           Integer                       IIIINNNNTTTTEEEEGGGGEEEERRRR (IIIINNNNTTTTEEEEGGGGEEEERRRR****8888 for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  172.  
  173.           Character                     CCCCHHHHAAAARRRRAAAACCCCTTTTEEEERRRR
  174.  
  175.           Single precision              RRRREEEEAAAALLLL
  176.  
  177.           Double precision              DDDDOOOOUUUUBBBBLLLLEEEE PPPPRRRREEEECCCCIIIISSSSIIIIOOOONNNN
  178.  
  179.           Single precision complex      CCCCOOOOMMMMPPPPLLLLEEEEXXXX
  180.  
  181.           Double precision complex      DDDDOOOOUUUUBBBBLLLLEEEE CCCCOOOOMMMMPPPPLLLLEEEEXXXX
  182.  
  183.      C/C++:
  184.  
  185.           Array dimensioned _n           xxxx[[[[_n]]]]
  186.  
  187.           Character                     cccchhhhaaaarrrr
  188.  
  189.           Integer                       iiiinnnntttt (lllloooonnnngggg lllloooonnnngggg for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. CCCCHHHHPPPPRRRR((((3333SSSS))))                                                              CCCCHHHHPPPPRRRR((((3333SSSS))))
  203.  
  204.  
  205.  
  206.           Single precision              ffffllllooooaaaatttt
  207.  
  208.           Double precision              ddddoooouuuubbbblllleeee
  209.  
  210.           Single precision complex      ssssccccssssllll____ccccoooommmmpppplllleeeexxxx
  211.  
  212.           Double precision complex      ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx
  213.  
  214.      C++ STL:
  215.  
  216.           Array dimensioned _n           xxxx[[[[_n]]]]
  217.  
  218.           Character                     cccchhhhaaaarrrr
  219.  
  220.           Integer                       iiiinnnntttt (lllloooonnnngggg lllloooonnnngggg for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  221.  
  222.           Single precision              ffffllllooooaaaatttt
  223.  
  224.           Double precision              ddddoooouuuubbbblllleeee
  225.  
  226.           Single precision complex      ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>>
  227.  
  228.           Double precision complex      ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>>
  229.  
  230. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  231.      IIIINNNNTTTTRRRROOOO____SSSSCCCCSSSSLLLL(3S), IIIINNNNTTTTRRRROOOO____BBBBLLLLAAAASSSS2222(3S), SSSSSSSSPPPPRRRR(3S)
  232.  
  233.      IIIINNNNTTTTRRRROOOO____CCCCBBBBLLLLAAAASSSS(3S) for information about using the C interface to Fortran 77
  234.      Basic Linear Algebra Subprograms (legacy BLAS) set forth by the Basic
  235.      Linear Algebra Subprograms Technical Forum.
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.                                                                         PPPPaaaaggggeeee 4444
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.